package com.paic.mhis.hcpms.quota.exportword.dao;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

import com.paic.mhis.hcpms.quota.exportword.dto.IndicatorWordDTO;
import com.paic.mhis.hcpms.quota.exportword.dto.KpiBatchDTO;
import com.paic.mhis.hcpms.quota.exportword.dto.KpiLimitDTO;

/**  
 * WordDataDao
 * @author:     EX-XIONGFEI002
 * @version:    
 */
public interface WordDataDao {

	public List<IndicatorWordDTO> queryRatio(Map<String, String> mapValue);
	
	public double queryAllValue(Map<String, String> mapValue);

	public BigDecimal queryMoreOrgOutData(Map<String, String> map);

	public List<IndicatorWordDTO> queryOneOrgOutFeeData(Map<String, String> map);

	public List<IndicatorWordDTO> queryOutYearData(Map<String, String> map);

	/**
	 * 根据KPI指标查询某月数据
	 * ------------------------------------------------------------------
	 * 2015-2-6 mhis_hcpms EX-ZHENGCHAO001 创建
	 */
	public List<IndicatorWordDTO> queryKpiData(Map<String, String> map);

	/**
	 * 查询年度总体 月均住床及每日费用数据
	 * ------------------------------------------------------------------
	 * 2015-2-6 mhis_hcpms EX-ZHENGCHAO001 创建
	 */
	public List<IndicatorWordDTO> queryYearKpiData(Map<String, String> map);

	/**
	 * 查询多机构等级 月均住床及每日费用数据
	 * ------------------------------------------------------------------
	 * 2015-2-6 mhis_hcpms EX-ZHENGCHAO001 创建
	 */
	public List<IndicatorWordDTO> queryOrgData(Map<String, String> map);

	/**
	 * 查询单一机构（具体医院）月均住床及每日费用数据
	 * ------------------------------------------------------------------
	 * 2015-2-9 mhis_hcpms EX-ZHENGCHAO001 创建
	 */
	public List<IndicatorWordDTO> queryOneOrgData(Map<String, String> map);

	/**
	 * 查询单一机构（具体医院）12个月内 月均住床及每日费用数据
	 * ------------------------------------------------------------------
	 * 2015-2-9 mhis_hcpms EX-ZHENGCHAO001 创建
	 */
	public List<IndicatorWordDTO> queryOneOrgYearData(Map<String, String> map);

	/**
	 * queryWorkDept
	 * @param map map
	 * @return map
	 */
	public List<IndicatorWordDTO> queryWorkDept(Map<String, String> map);

	/**
	 * 删除记录
	 * 
	 * @param map
	 *            map
	 */
	public void deleteDocRecord(Map<String, String> map);

	/**
	 * 插入rtf文件生成记录
	 * 
	 * @param map
	 *            map
	 */
	public void insertDocRecord(Map<String, String> map);

	/**
	 * 获取kpi 上下限列表 
	 * @param map  map
	 * @return    kpi列表
	 */
	public List<KpiLimitDTO> queryKpiRatioLimit(Map<String, String> map);

	/**
	 * 查询批次列表 
	 * @param map  map
	 * @return 列表
	 */
	public List<KpiBatchDTO> queryKpiBatchList(Map<String, String> map);

	/**
	 * 更新batchNo    
	 * @param map map
	 * @return 更新行数
	 */
	public int updateKpiBatchNo(Map<String, String> map);
}
